package com.yidu.utils;



import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import java.io.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.UUID;

/**
 * 类的描述：
 *
 * @author 九月
 * @version 1.0
 * @since 2021/06/22
 */
public class Tools {
    /**
     * 判断字符串是否为空
     * @param str
     * @return
     */
    public static boolean isEmpty(String str){
        if(str==null || "".equals(str)){
            return true ;
        }
        //不为空
        return false ;
    }
    /**
     * 将对象转换为json之后输出
     * @param response
     * @param obj
     * @throws IOException
     */
//    public static void write(HttpServletResponse response,Object obj) throws IOException {
//        Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create();
//        String json=gson.toJson(obj);
//        System.out.println("json是："+json);
//        PrintWriter out= response.getWriter();
//        out.write(json);
//        out.close();
//    }
    static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

    /**
     * 将字符串转换为日期
     * @param str
     * @return
     */
    public static Date parseDateByStr(String str){
        Date date = null ;
        if(isEmpty(str)){
            return date ;
        }
        try {
            date= sdf.parse(str);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return date;
    }
    /**
     * 将日期转换为字符串
     * @param date
     * @return
     */
    public static String parseDate(Date date){
        if(date==null){
            return "";
        }else{
            return sdf.format(date);
        }
    }


    /**
     * 根据字符串转换为int
     * @param integer
     * @return
     */
    public static Integer parseIntByStr(String integer){
        if(isEmpty(integer)){
            return null ;
        }else{
            return Integer.valueOf(integer);
        }
    }

    /**
     * 根据字符串转换为double
     * @param d
     * @return
     */
    public static Double parseDoubleByStr(String d){
        if(isEmpty(d)){
            return null ;
        }else{
            return Double.valueOf(d);
        }
    }

    /**
     *
     * @param request
     * @return 上传文件
     * @throws IOException
     * @throws ServletException
     */
//    public static String uploadFile(HttpServletRequest request,String files) throws IOException, ServletException {
//        Part part =request.getPart(files);
//        System.out.println("得到的part是"+part);
//        InputStream is=part.getInputStream();
//        String realPath=request.getServletContext().getRealPath("/upload");
//        String fileName=part.getSubmittedFileName();
//        String path="";
//        if (!Tools.isEmpty(fileName)){
//            String hz=fileName.substring(fileName.lastIndexOf("."));
//            String fileNameNews= UUID.randomUUID().toString()+hz;
//            OutputStream os=new FileOutputStream(realPath+"//"+fileNameNews);
//            byte[] by=new byte[1024];
//            int len=0;
//            while ((len=is.read(by))>-1){
//                os.write(by,0,len);
//            }
//            System.out.println("准备就绪");
//            os.close();
//            is.close();
//            path="/upload/"+fileNameNews;
//            System.out.println("方法结束");
//        }
//        return path;
//    }
}
